#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>


typedef int QDataType;
typedef struct QueueNode
{
    QDataType data;
    struct QueueNode* next;
} QueueNode;

typedef struct Queue
{
    QueueNode* phead, * ptail;
    int size;
} Queue;


void QueuePush(Queue* pq, QDataType x)
{
    assert(pq);
    QueueNode* NewNode = (QueueNode*)malloc(sizeof(QueueNode));
    if (NewNode == NULL)
    {
        perror("malloc fail!\n");
        exit(1);
    }
    NewNode->data = x;
    NewNode->next = NULL;
    if (pq->phead == NULL)
    {
        pq->phead = pq->ptail = NewNode;
    }
    else
    {
        pq->ptail->next = NewNode;
        pq->ptail = pq->ptail->next;
    }
    pq->size++;
}

void test()
{
	
}

int main()
{
	test();
	return 0;
}